// 抖音博主主页

const app = getApp()

import {
  getTalentInfo,
  getSwiperList,
} from '../../../api/douyin'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 搜索项
    search: {
      direction: 'down', // up.向上搜索 down.向下搜索
      minpage: 1, // 最小ID
      maxpage: 1, // 最大ID
      limit: 15, // 搜索长度
      talent_id: 0, // 抖音博主ID
    },

    info: {}, // 抖音博主信息

    hasMore: true, // 是否有更多内容
    list: [], // 内容列表
    loading: false, // 加载中

    // 骨架屏
    grid: [
      [{
          width: '88px',
          height: '88px',
          borderRadius: '6px'
        },
        {
          width: '88px',
          height: '88px',
          borderRadius: '6px'
        },
        {
          width: '88px',
          height: '88px',
          borderRadius: '6px'
        },
      ],
      [{
          width: '88px',
          height: '16px',
          borderRadius: '3px'
        },
        {
          width: '88px',
          height: '16px',
          borderRadius: '3px'
        },
        {
          width: '88px',
          height: '16px',
          borderRadius: '3px'
        },
      ],
    ],
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    const id = options.id
    if (id == undefined)
      return false
    this.data.search.talent_id = id
    console.log('talent_id', id)

    // 获取达人信息
    this.getInfo()
    // 获取达人作品列表
    this.getList()
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    this.getInfo()
    this.setData({
      'search.minpage': 1,
      'search.maxpage': 1,
      hasMore: true,
      list: [],
    })
    this.getList()
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    if (this.data.hasMore) {
      this.data.search.maxpage++
      this.getList()
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },

  // ####################################################################################################
  // # 基础功能 方法
  // ####################################################################################################

  // 查看视频
  onVideoClick(event) {
    // 当前选中的视频坐标
    const index = event.currentTarget.dataset.index

    // 刷视频页面信息记入缓存
    wx.setStorageSync("dataSwiperPlay", {
      page: this.data.list[index].page, // 最大ID
      limit: this.data.search.limit, // 搜索长度
      talent_id: this.data.search.talent_id, // 其他限制条件
      videoId: this.data.list[index].id,
      label_type: 'all',
      labels: [],
      order: '',
    })

    app.navigationTo("packagedouyin/pages/play/play")
  },

  // ####################################################################################################
  // # 接口访问 方法
  // ####################################################################################################

  // 获取达人信息
  getInfo() {
    getTalentInfo(this.data.search.talent_id).then(res => {
      if (res.status === 200) {
        this.setData({
          info: res.data
        })
      } else {
        app.showToast(res.msg)
      }
    })
  },

  // 获取达人作品列表
  getList() {
    this.setData({
      loading: true
    })
    getSwiperList(this.data.search).then(res => {
      if (res.status === 200) {
        const count = res.data.list.length
        const list = res.data.list
        if (count) {
          for (let i = 0; i < count; i++)
            this.data.list.push(list[i])
          this.setData({
            list: this.data.list,
          })
        } else {
          this.setData({
            hasMore: false, // 没有更多内容了
          })
        }
      } else {
        app.showToast(res.msg)
      }
      this.setData({
        loading: false
      })
      wx.stopPullDownRefresh()
    })
  },

  // ####################################################################################################

})